package com.fept.msgcore.msgserver.protocol.model.message;

import com.fept.msgcore.msgserver.common.model.ToString;

/**
 * Created by Srma on 2/9/2017.
 */
public class MessageModel extends ToString {

    /**
     *
     */
    private static final long serialVersionUID = 1423445157101258733L;

    private String ip;
    private int port;
    private String senderID;

    private String type;
    private String subType;
    private String source;
    private String params;
    private String extParams;

    /**
     * 定制的深度赋值
     */
    @Override
    public MessageModel clone() {
        MessageModel model = new MessageModel();

        /**
         * clone所有属性
         */
        model.ip = this.ip;
        model.port = this.port;
        model.senderID = this.senderID;
        model.type = this.type;
        model.subType = this.subType;
        model.source = this.source;
        model.params = this.params;
        model.extParams = this.extParams;

        return model;
    }

    /**
     * @return the senderID
     */
    public String getSenderID() {
        return senderID;
    }

    /**
     * @param senderID
     *            the senderID to set
     */
    public void setSenderID(String senderID) {
        this.senderID = senderID;
    }

    /**
     * @return the ip
     */
    public String getIp() {
        return ip;
    }

    /**
     * @param ip
     *            the ip to set
     */
    public void setIp(String ip) {
        this.ip = ip;
    }

    /**
     * @return the port
     */
    public int getPort() {
        return port;
    }

    /**
     * @param port
     *            the port to set
     */
    public void setPort(int port) {
        this.port = port;
    }

    /**
     * @return the type
     */
    public String getType() {
        return type;
    }

    /**
     * @param type
     *            the type to set
     */
    public void setType(String type) {
        this.type = type;
    }

    /**
     * @return the subType
     */
    public String getSubType() {
        return subType;
    }

    /**
     * @param subType
     *            the subType to set
     */
    public void setSubType(String subType) {
        this.subType = subType;
    }

    /**
     * @return the source
     */
    public String getSource() {
        return source;
    }

    /**
     * @param source
     *            the source to set
     */
    public void setSource(String source) {
        this.source = source;
    }

    /**
     * @return the params
     */
    public String getParams() {
        return params;
    }

    /**
     * @param params
     *            the params to set
     */
    public void setParams(String params) {
        this.params = params;
    }

    /**
     * @return the extParams
     */
    public String getExtParams() {
        return extParams;
    }

    /**
     * @param extParams
     *            the extParams to set
     */
    public void setExtParams(String extParams) {
        this.extParams = extParams;
    }
}
